home *** CD-ROM | disk | FTP | other *** search
-
- SCRDUMP/XALTHELP
- GEMDUMP
-
- geschrieben von Th. Morus Walter
- (c) 1994/5 by Never Ready Software, Th. Morus Walter
-
- Th. Morus Walter
- Frankenstraße 214
- 97078 Würzburg
- FEDERAL REPUBLIC of germany
- Tel. 0931/287055
-
- Kontonr.: 301116 Raiffeisenbank Rimpar-Versbach eG BLZ 790 682 22
-
- Erreichbarkeit via eMail steht leider noch nicht fest...
-
-
- Dieses Programm war Freeware!
- Dieses Programm ist FAIRWARE!
-
- Jeder der dieses Programm benutzt ist gebeten, mir, dem Autor, eine
- eine kleine Spende als Anerkennung meiner Arbeit zukommen zu lassen...
- Kontonummer siehe oben...
-
- Es darf als Ganzes, d.h. einschließlich der Quellen und dieser Datei,
- beliebig weitergegeben werden. Es ist erlaubt das Programm zu verändern
- allerdings sollte ein Hinweis auf den Ur-Autor bestehen bleiben...
- Sollen geänderte Versionen weiterverbreitet werden, so ist deutlich zu
- machen, daß ich für diese Versionen NICHT verantwortlich bin.
-
- - - - - -
-
- D I S C L A I M E R:
- --------------------
- No effort has been made to make this program bugfree.
- USE THIS PROGRAM AT YOUR OWN RISK!
- NO WARRANTY PROVIDED!
-
- Es wurden keinerlei Anstrengungen unternommen, um diese Programm
- fehlerfrei zu machen.
- BENUTZEN SIE DIESES PROGRAMM AUF EIGENE GEFAHR!
- KEINE GARANTIE FÜR IRGENDWAS!
-
- - - - - -
-
- SCRDUMP.ACC/XALTHELP.PRG sowie GEMDUMP.ACC sind zwei Varianten eines
- xIMG-Screendump-Programmes.
- Beide Varianten erlauben die Speicherung des (gesammten) Bildschirms
- in eine (x)Image-Datei via ALT/HELP sowie die Speicherung des Bildschirms,
- eines Fensters oder eines - mittels Maus festzulegenden - Rechtecks.
- Die TOS-Hardcopy läßt sich (ab Tos1.4) mittels CTRL/ALT/HELP weiterhin
- aufrufen.
-
- Stellt sich natürlich die Frage worin der Unterschied zwischen den
- Varianten liegt:
-
- XALTHELP.PRG ist ein residentes Programm (das man im allgemeinen im
- Auto-Ordner starten wird), das das ALT/HELP-Flag abfragt und gegebenenfalls
- den Screendump durchführt. SCRDUMP.ACC dient lediglich zum Einstellen
- der Parameter von XALTHELP.PRG und zum Aufruf für das Speichern von
- Fensterinhalten oder Rechtecken.
- Diese Vorgehensweise hat zwar den Vorteil, daß der ALT/HELP-Dump
- jederzeit aufgerufen werden kann, verwendet aber GEMDOS-Routinen
- im Interupt (was nicht erlaubt ist, meistens aber doch gut geht).
- ACHTUNG! 'meistens aber doch gut geht' ist natürlich keinerlei Garantie.
- Ich habe ein ähnliches Screendump-Programm lange Zeit verwendet und
- bin dabei nie abgestürzt. Allerdings sollte man darauf verzichten
- Screendumps ausgerechnet dann aufzurufen, wenn man davon ausgehen kann,
- daß das GEMDOS gerade am werkeln ist, also insbesondere nicht während
- Dateioperationen. Beim Testen mit XALTHELP ist es mir problemlos
- gelungen unter solchen Umständen Abstürze zu verursachen.
- (z.B.: Aufruf von wc *.* in der Mupfel (Gemini); drückt man dann
- ALT/HELP so ist ein Absturz ziemlich sicher.)
- Der Bildschirm wird in XALTHELP mittels LineA-Variablen und Xbios-Funktionen
- angesprochen; dies ist natürlich nicht GEM-konform und läuft deshalb
- nur in original ST (TT?,Falcon?) und verwandten Bildschirmmodi (z.B.
- Overscan) nicht aber mit Graphikkarten.
-
- GEMDUMP.ACC ist demgegenüber ein 99% GEM-konformes und legales Programm.
- (zum letzten Prozent s.u.).
- Intern wird in der VBL-Routine zum Abfragen des ALT/HELP-Flags lediglich
- ein Flag gesetzt, das Accessory fragt dieses Flag regelmäßig (Timer-Event)
- ab und führt gegebenenfalls den Screendump durch.
- Nachteil dieses Verfahrens ist, daß man auf die Funktion des Timerevents
- angewiesen ist. Unter Single-Tasking-Tos ist dies beispielsweise immer dann
- NICHT der Fall, wenn Programme längere Berechnungen durchführen ohne
- den GEM-Evntmanager aufzurufen, wenn man TOS-Programme laufen läßt...
- Kurz, immer dann, wenn kooperatives Multitasking (MultiGEM, Mag!X 1.x)
- versagt, dann versagt auch GEMDUMP.
- Unter Mag!X 2.0 (präemtives Multitasking) (und vermutlich auf MultiTOS)
- sieht es besser aus. Hier sind (abgesehen vom Single-Start eines Programmes
- unter Mag!X, wo ja Accessories abgeschaltet werden) kaum Einschränkungen
- zu erwarten.
- Wird der Screendump mittels ALT/HELP ausgelöst und das Accessory kann nicht
- innerhalb einer Sekunde den Dump durchführen, so wird der ALT/HELP-Aufruf
- ignoriert.
- Beim Aufruf via ALT/HELP - und das ist das letzte Prozent nichtkonformität -
- wird der Bildschirmzugriff nicht mittels
- wind_update(BEG_UPDATE)/wind_update(END_UPDATE)
- angemeldet (wie es sein sollte), weil nur so ein aktueller Screendump
- auch dann möglich ist, wenn ein anderes Programm den Bildschirmzugriff belegt.
-
- Zusammenfassung:
- wenn Sie ein SingleTaskingTos, einen ST in Original (oder Overscan)-Auflösung
- und womöglich wenig Speicher haben, so sollten Sie die XALTHELP/SCRDUMP
- Variante zumindest einmal ausprobieren.
- ES SEI HIER ABER NOCHMALS AUSDRUECKLICH DARAUF HINGEWIESEN, DASS ES IN
- SELTENEN FAELLEN STATT EINES SCREENDUMPS AUCH BOMBEN GEBEN KANN.
- Ansonsten ist GEMDUMP wohl vorzuziehen.
-
- Bedienung:
- ==========
- Die beiden Accessories können genauso auch als Programm verwendet werden
- (einfach umbenennen).
- Die Dialoge sind - bis auf eine zusätzliche Option in GEMDUMP - gleich.
- Im Dialog kann zunächst der Pfad und (Rumpf-)Name der Bilder festgelegt
- werden. Dieser wird beim Speichern um eine Nummer und die Endung '.IMG'
- ergänzt. Mit dem Button links über dem Namensfeld kann man den Dateiselector
- zur Einstellung des Pfades aufrufen.
- Mit dem Button 'Bildnummer zurücksetzen' kann an erreichen, daß beim
- Übernehmen der Einstellung die Nummer des nächsten Bildes wieder auf
- 0 gesetzt wird, mit dem Button 'X-Imgage schreiben' kann man wählen
- ob eine einfache GEM-Image-Datei ohne Farben (Button nicht selektiert)
- oder eine XImage-Datei mit Farben geschrieben werden soll.
- In GEMDUMP kann man mit einem weiteren Button einstellen, ob die
- Abfrage des ALT/HELP-Flags eingeschaltet sein soll (ist sie dies
- nicht, kann man natürlich keinen Screendump via ALT/HELP aufrufen;
- dafür spart man sich die zehnmal in der Sekunde auftretenden Timerevents).
-
- Zum Verlassen des Dialoges gibt es sechs Button:
-
- 'Abbruch' verläßt den Dialog, ohne irgendwelche Aktionen.
- In allen anderen Fällen werden die eingestellten Optionen eingelesen.
- Bei 'Setzen' ist dies die einzige Aktivität, bei 'Sichern' werden
- die Daten in die Programmdatei, die man mittels Dateiselector auswählt,
- geschrieben (XALTHELP bzw. GEMDUMP).
- 'Fenster', 'Rahmen' und 'alles' dienen dem Auslösen der Hardcopy.
- Bei Fenster kann man anschließend ein Fenster anklicken und es wird nur
- dessen Inhalt gespeichert. Mausklick rechts bricht die Funktion ab. Klickt
- man auf den Hintergrund, so wird der ganze Bildschirm ohne Menüleiste
- gespeichert. Ist ein Fenster teilweise überdeckt, so werden die Überdeckungen
- natürlich mit abgespeichert.
- Bei 'Rahmen' kann man mittels 'Gummiband' ein Rechteck aufziehen, dessen
- Inhalt dann abgespeichert wird,
- bei 'alles' wird der ganze Bildschirm (wie beim ALT/HELP-Aufruf) abgespeichert.
-
- Tritt beim Speichern ein Fehler auf (zuwenig Speicher frei, Dateifehler...),
- so wird dieser natürlich nur dann gemeldet, wenn der Aufruf vom Accessory
- aus erfolgte. Beim ALT/HELP-Aufruf wird das Speichern einfach komentarlos
- abgebrochen.
-
- Anmerkungen zur Speicherung der Farben:
- bei GEMDUMP werden die Farben wie es sich gehört mittels GEM ermittelt,
- bei XALTHELP findet das XBIOS Verwendung. Im letzeren Fall werden die
- pro Farbe nur die unteren 3 Bit (ST-Modus, für STE wird ein Bit verschlampt)
- verwendet.
-
- Anmerkung zu GEMDUMP:
- prinzipbedingt benötigt GEMDUMP zum Speichern eines Bildschirms (oder
- eines Teils eine Bildschirm) die doppelte Menge an Speicher, wie
- für den Bildschirm (oder den Teil) nötig ist.
- SCRDUMP begnügt sich demgegenüber bei Bildschirmausschnitten mit
- der einfachen Größe des Blockes, beim Speichern der ganzen Seite
- in überhaupt kein Speicher nötig.
-
- Anmerkung zum Installieren:
- das Programm kann natürlich nur dann funktionieren, wenn kein anderes
- Programm das ALT/HELP-Flag ausliest und löscht.
- Beide Programm sind nicht in der Lage, die VBL-Queue zu vergrößern, wenn
- diese bereits voll ist (sollte aber gewöhnlich nicht passieren). Das
- gleiche gilt bie XALTHELP für den Cookie-Eintrag: ist der Cookie-Jar
- voll, so kann er von XALTHELP nicht erweitert werden (this is somehow
- a bug).
- P.S.: installiert wird das Programm natürlich dadurch, daß man XALTHELP.PRG
- in den AutoOrdner (Position ziemlich egal, bei niedriegen TOS-Versionen
- muß vorher ein anderes Programm einen Cookie-Jar anlegen) und SCRDUMP.ACC
- ins Wurzelverzeichnis des Bootlaufwerkes (oder von wo auch immer man
- die ACCs bootet) kopiert, für GEMDUMP indem man GEMDUMP.ACC zu den ACCs
- kopiert.
-
- Patchmöglichkeit bei GEMDUMP:
- die Häufigkeit der Timerevents und die Zeit, die zwischen ALT/HELP-Aufruf
- und Speicherung vergehen darf kann im Programm gepatched werden.
- Dazu muß man mit einem Diskettenmonitor oder einem anderen geeigneten Mittel
- in der Programmdatei die (2 Byte) Integerwerte in (Byte) Position 30 und
- 32 ändern (nach diesen beiden Integern steht ein Magic mit dem Inhalt
- 'TMMW'). Der erste Wert ist die Zeit für den Timerevent in Millisekunden
- (eingestellt ist 100). Der zweite Wert gibt die erlaubte Zeit in 200 Hz
- Zähler Ticks an, eingestellt ist 200, also ein Sekunde.
-
-
- noch ein Hinweis:
-
- NIE WIEDER FASCHISMUS! NIE WIEDER KRIEG!
- WIDER DIE NEUE (UND ALTE) RECHTE!
-
-